Next.js Explained: Static Vs. Dynamic Rendering